﻿using System;
using System.Windows;
using GC_FFW.ForecastWriterClient.Abstractions.Factories;
using GC_FFW.ForecastWriterClient.Enums;
using GC_FFW.ForecastWriterClient.Windows;

namespace GC_FFW.ForecastWriterClient.Factories
{
	public class WindowFactory : WindowBaseFactory
	{
		#region Base Class Members

		public override Window CreateWindow(WindowType windowType)
		{
			switch (windowType)
			{
				case WindowType.ForecastManager:
					return new ForecastManager();

				case WindowType.MatchDataEditor:
					return new MatchDataEditor();

				case WindowType.MatchEventsEditor:
					return new MatchEventsEditor();

				case WindowType.ForecastEditor:
					return new ForecastEditor();

				case WindowType.ImportDataManager:
					return new ImportDataManager();

				default:
					throw new NotImplementedException(string.Format("not implemented window type"));
			}
		}

		#endregion
	}
}
